<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>局部组件</title>
    <script src="../../js/vue.js"></script>
</head>
<body>
<div id="app">
    {{message}}
    <!--
    功能:
        声明局部组件.
    说明:
        1. 这种方式声明的组件只能在当前Vue实例的作用域之内使用.
    -->
    <my-div v-bind:todo="message"></my-div>
    <my-div2 v-bind:todo="message"></my-div2>
</div>
<script>
    // 局部注册组件
    let child = {
        props: ['todo'],
        template: '<div>{{ todo }}</div>'
    };

    // 全局注册组件
    Vue.component('my-div2', {
        //声明模板标签的属性节点
        props: ['todo'],
        //展示属性节点为真实的html元素
        template: '<li>{{ todo }}</li>'
    });

    let app1 = new Vue({
        el: '#app',
        data: {
            message: 'hello'
        },
        // 应用局部组件
        components: {
            'my-div': child
        }
    });

</script>
</body>
</html>